<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
    <title>ISeeAdmin 【animate】 </title>
    <!--    <link rel="stylesheet" href="/static/element/index.css">-->
    <!--    <link href="https://cdn.staticfile.org/element-ui/2.12.0/theme-chalk/index.css" rel="stylesheet">-->
    <link href="https://cdn.staticfile.org/element-ui/2.12.0/theme-chalk/index.css" rel="stylesheet">
    <link rel="stylesheet" href="/static/iconfont/iconfont.css">
    <link rel="stylesheet" href="/static/css/common.css">
    <!--    <link href="https://cdn.bootcss.com/animate.css/3.7.2/animate.min.css" rel="stylesheet">-->
    <link href="https://cdn.staticfile.org/animate.css/3.7.2/animate.min.css" rel="stylesheet">
    <!--    开发环境-->
    <!--        <script src="/static/js/iseeadmin.js"></script>-->
    <!--    正式环境-->
    <script src="/static/js/iseeadmin.min.js"></script>
    <script src="/static/js/menu.js"></script>
    <!--    开发环境-->
    <!--    <script src="/static/js/vue.js"></script>-->
    <!--    正式环境-->
    <!--        <script src="/static/js/vue.min.js"></script>-->
    <!--    <script src="https://cdn.staticfile.org/vue/2.6.10/vue.min.js"></script>-->
    <script src="https://cdn.staticfile.org/vue/2.6.10/vue.min.js"></script>
    <!--    <script src="/static/element/index.js"></script>-->
    <!--    <script src="https://cdn.staticfile.org/element-ui/2.12.0/index.js"></script>-->
    <script src="https://cdn.staticfile.org/element-ui/2.12.0/index.js"></script>
    <!--    <script src="/static/js/axios.min.js"></script>-->
    <style>
        ol {
            font-size: 12px;
        }

        ol li {
            line-height: 25px;
        }
    </style>
</head>
<body>
<div id="app" v-cloak>
    <el-container style="height: 100%;min-height:100vh;">
        <el-aside v-show="iseeData.asideShow" width="210px">
            <!--            左侧logo 开始-->
            <div class="aside-logo">
                <img class="aside-logo-img" src="/static/images/logo.png"
                     alt=""> ISeeAdmin
            </div>
            <!--            左侧logo 结束-->
            <!--            左侧菜单 开始-->
            <el-menu @select="iseeMenuOpen" style="width: 210px;"
                     unique-opened
                     :default-active="iseeData.defaultActive"
                     background-color="#304156"
                     text-color="#bfcbd9"
                     active-text-color="#409eff">
                <iseemenu :menu="iseeData.menu"></iseemenu>
            </el-menu>
            <!--            左侧菜单 结束-->
        </el-aside>

        <el-container>
            <el-header height="83px">
                <div class="isee-header-div">
                    <!--                    面包屑 开始-->
                    <div style="width: 100%;display: inherit;">
                        <span class="aside-show" @click="iseeAsideShow">
                            <i :class="iseeData.asideShowIcon"></i>
                        </span>

                        <el-breadcrumb style="line-height: 50px" separator="/">
                            <el-breadcrumb-item v-for="(item,index) in iseeData.breadcrumb" :key="index">{{item.title}}
                            </el-breadcrumb-item>
                        </el-breadcrumb>
                    </div>
                    <!--                    面包屑 结束-->
                    <!--                    icon功能列表，可根据需要修改 开始-->
                    <div>
                        <ul class="isee-ul">
                            <li class="isee-li">
                                <i style="font-size: 20px" class="el-icon-bell"></i>
                            </li>
                            <li @click="iseeFullScreen" class="isee-li">
                                <span class="iconfont" style="font-size: 20px" v-html="iseeData.fullscreenIcon"></span>
                            </li>
                            <li class="isee-li" @click="iseeData.drawer = true">
                                <span class="iconfont" style="font-size: 20px">&#xe602;</span>
                            </li>
                        </ul>
                    </div>
                    <!--                    icon功能列表，可根据需要修改 结束-->
                    <!--                    avatar显示 开始-->
                    <div>
                        <el-dropdown @command="iseeOpenUrl">
                              <span class="el-dropdown-link">
                                  <el-avatar style="margin-top: 9px" :size="iseeData.avatar.size"
                                             :src="iseeData.avatar.url"></el-avatar>
                              </span>

                            <el-dropdown-menu slot="dropdown">
                                <el-dropdown-item v-for="(item,index) in iseeData.avatar.list" :icon="item.icon"
                                                  :key="index" :command="index">{{item.title}}
                                </el-dropdown-item>
                            </el-dropdown-menu>
                        </el-dropdown>
                    </div>
                    <!--                    avatar显示 结束-->
                </div>
                <div style="display: flex">
                    <!--                    标签页列表 开始-->
                    <span @click="iseeTagDivMove(1)" class="isee-tag-span">
                        <i class="el-icon-d-arrow-left"></i>
                    </span>
                    <div ref="iseeTagDiv" class="isee-tag-div">
                        <el-tag style="cursor:pointer;margin-right: 5px;" v-for="(item,index) in iseeData.tagList"
                                :key="index"
                                @click="iseeTagSwitch(item.url,item.index,item.breadcrumb)"
                                :effect="item.effect"
                                :type="item.type"
                                @close="iseeTagClose(item.url,index)"
                                size="medium"
                                :closable="item.closable"><i v-show="item.show" class="el-icon-view"></i> {{item.title}}
                        </el-tag>
                    </div>
                    <span @click="iseeTagDivMove(2)" class="isee-tag-span">
                        <i class="el-icon-d-arrow-right"></i>
                    </span>
                    <!--                    标签页列表 结束-->
                    <!--                    标签页集中操作 开始-->
                    <div style="float: right;margin-left: 10px">
                        <el-dropdown @command="iseeTagCommandClose">
                          <span class="el-dropdown-link">
                              <i class="el-icon-arrow-down isee-el-icon-arrow-down"></i>
                          </span>
                            <el-dropdown-menu slot="dropdown">
                                <el-dropdown-item command="1">关闭当前标签页</el-dropdown-item>
                                <el-dropdown-item command="2">关闭其它标签页</el-dropdown-item>
                                <el-dropdown-item command="3">关闭全部标签页</el-dropdown-item>
                            </el-dropdown-menu>
                        </el-dropdown>
                    </div>
                    <!--                    标签页集中操作 结束-->
                </div>

                <!--抽屉式展示-->
                <el-drawer
                        title="iseeAdmin"
                        :visible.sync="iseeData.drawer"
                        :direction="iseeData.direction"
                        :show-close="iseeData.showClose"
                        custom-class="isee-drawer-info"
                >
                    <el-divider></el-divider>
                    <div style="font-size: 14px">
                        <p class="isee-title">版本信息</p>
                        <ul class="isee-drawer-ul">
                            <li>
                                当前版本：iseeAdmin-v{{iseeData.version}}
                            </li>
                            <li>
                                基于框架：vue v2.6.10，element v2.12.0
                            </li>
                            <li>
                                下载地址：
                                <el-link type="primary" :underline="false" href="https://gitee.com/youge/iseeadmin"
                                         target="_blank">码云
                                </el-link>
                                |
                                <el-link type="primary" :underline="false" href="https://github.com/fukedi/iseeadmin"
                                         target="_blank">github
                                </el-link>
                            </li>
                        </ul>
                    </div>
                    <el-divider></el-divider>
                    <div style="font-size: 14px">
                        <p class="isee-title">关于版权</p>
                        <ul class="isee-drawer-ul">
                            <li>
                                iseeAdmin完全开源，可免费使用
                            </li>
                            <li>
                                QQ交流群：927049524
                            </li>
                        </ul>
                    </div>
                </el-drawer>
                <!--抽屉式展示 结束-->
            </el-header>

            <el-main>
                <!--                主内容展示-->
                <div style="margin-right: 10px">
                    <el-card class="box-card">
                        animate
                        <el-link type="primary" target="_blank"
                                 href="https://daneden.github.io/animate.css/">
                            官方文档 https://daneden.github.io/animate.css/
                        </el-link>
                    </el-card>
                </div>
                <div style="display: flex">
                    <el-card class="box-card">
                        <el-divider content-position="left"><span
                                class="el-divider-span">自定义过渡类名 <el-tooltip
                                content="通过自定义过渡类名使用第三方动画类库 " placement="top" effect="light"><i
                                class="el-icon-info" style="color: gray"></i></el-tooltip></span></el-divider>
                        <p style="padding-left: 10px;border-left: 4px solid #409EFF;border-radius: 4px;line-height: 25px">
                            我们可以通过以下特性来自定义过渡类名，他们的优先级高于普通的类名
                        </p>
                        <ol>
                            <li>
                                <span style="color: #d63200;font-weight: bold"> enter-class</span>
                            </li>
                            <li>
                                <span style="color: #d63200;font-weight: bold">enter-active-class</span>
                            </li>
                            <li>
                                <span style="color: #d63200;font-weight: bold">enter-to-class (2.1.8+)</span>
                            </li>
                            <li>
                                <span style="color: #d63200;font-weight: bold">leave-class</span>
                            </li>
                            <li>
                                <span style="color: #d63200;font-weight: bold">leave-active-class</span>
                            </li>
                            <li>
                                <span style="color: #d63200;font-weight: bold">leave-to-class (2.1.8+)</span>
                            </li>
                        </ol>
                        <el-button type="primary" @click="show1=!show1">观看效果</el-button>
                        <transition
                                name="custom-classes-transition"
                                enter-active-class="animated tada"
                                leave-active-class="animated bounceOutRight"
                        >
                            <p v-if="show1">iseeAdmin</p>
                        </transition>


                        <el-divider content-position="left"><span
                                class="el-divider-span">同时使用过渡和动画 <el-tooltip
                                content="同时使用过渡和动画 " placement="top" effect="light"><i
                                class="el-icon-info" style="color: gray"></i></el-tooltip></span></el-divider>
                        <p style="font-size: 13px;line-height: 25px">
                            Vue 为了知道过渡的完成，必须设置相应的事件监听器。它可以是 transitionend 或 animationend ，这取决于给元素应用的 CSS
                            规则。如果你使用其中任何一种，Vue 能自动识别类型并设置监听。
                        </p>
                        <p style="font-size: 13px;line-height: 25px">
                            但是，在一些场景中，你需要给同一个元素同时设置两种过渡动效，比如 animation 很快的被触发并完成了，而 transition 效果还没结束。在这种情况中，你就需要使用 type
                            特性并设置 animation 或 transition 来明确声明你需要 Vue 监听的类型。
                        </p>

                        <el-divider content-position="left"><span
                                class="el-divider-span">显性的过渡持续时间 <el-tooltip
                                content="2.2.0 新增 " placement="top" effect="light"><i
                                class="el-icon-info" style="color: gray"></i></el-tooltip></span></el-divider>

                        <p style="font-size: 13px;line-height: 25px">
                            在很多情况下，Vue 可以自动得出过渡效果的完成时机。默认情况下，Vue 会等待其在过渡效果的根元素的第一个 transitionend 或 animationend
                            事件。然而也可以不这样设定——比如，我们可以拥有一个精心编排的一系列过渡效果，其中一些嵌套的内部元素相比于过渡效果的根元素有延迟的或更长的过渡效果。
                        </p>
                        <p style="font-size: 13px;line-height: 25px">
                            在这种情况下你可以用 &lt;transition> 组件上的 duration 属性定制一个显性的过渡持续时间 (以毫秒计)：
                        </p>
                        <span style="font-size: 12px;padding-left: 20px;color: #2973b7">
                             &lt;transition :duration="1000"&gt;...&lt;/transition&gt;
                        </span>
                        <p style="font-size: 13px;line-height: 25px">
                            你也可以定制进入和移出的持续时间：
                        </p>
                        <span style="font-size: 12px;padding-left: 20px;color: #2973b7">
                        &lt;transition :duration="{ enter: 500, leave: 800 }"&gt;...&lt;/transition&gt;
                        </span>

                    </el-card>

                    <el-card class="box-card">

                        <el-divider content-position="left"><span
                                class="el-divider-span">效果测试 <el-tooltip
                                content="效果测试"
                                placement="top" effect="light"><i
                                class="el-icon-info" style="color: gray"></i></el-tooltip></span></el-divider>
                        <template>
                            <div style="height: 260px">
                                <h1 style="line-height: 200px;font-size: 30px;font-weight:bold;text-align: center;color: #67C23A"
                                    :class="'animated '+value2">iseeAdmin</h1>

                            </div>

                            <el-select @change="tryEffect" v-model="value1" placeholder="请选择动画，观看效果">
                                <el-option-group
                                        v-for="group in options"
                                        :key="group.label"
                                        :label="group.label">
                                    <el-option
                                            v-for="item in group.options"
                                            :key="item.value"
                                            :label="item.label"
                                            :value="item.value">
                                    </el-option>
                                </el-option-group>
                            </el-select>
                            <!--                            <el-button @click="tryEffect" plain type="primary">试试效果</el-button>-->
                        </template>

                    </el-card>
                </div>
                <!--                主内容展示 结束-->
            </el-main>
        </el-container>
    </el-container>
</div>


<script>
  const iseeAvatar = {
    url: '/static/images/avatar01.gif',
    size: 32,
    list: [
      {
        index: '',
        indexPath: [],
        icon: 'el-icon-user-solid',
        url: '',
        target: '_self',
        title: 'admin',
      }, {
        index: '6-1-0',
        indexPath: ["6", "6-1", "6-1-0"],
        icon: 'el-icon-tickets',
        url: '/pages/sets/myset/profile.html',
        target: '_self',
        title: '基本资料',
      }, {
        index: '6-1-1',
        indexPath: ["6", "6-1", "6-1-1"],
        icon: 'el-icon-edit-outline',
        url: '/pages/sets/myset/password.html',
        target: '_self',
        title: '修改密码',
      }, {
        index: '',
        indexPath: [],
        icon: 'el-icon-switch-button',
        url: '',
        target: '_self',
        title: '安全退出',
      },
    ]
  }
  var iseemenu = {
    props: ['menu'],
    name: 'iseemenu',
    template: `
    <div>
        <template v-for="item in menu">
            <el-submenu :index="item.index" v-if="item.children.length">
                <template slot="title">
                    <i :class="item.icon"></i>
                    <span slot="title">{{item.title}}</span>
                </template>
                <iseemenu :menu="item.children"></iseemenu>
            </el-submenu>
            <el-menu-item :index="item.index" v-else>
                <i :class="item.icon"></i>
                <span slot="title">{{item.title}}</span>
            </el-menu-item>
        </template>
    </div>`,
  }
  var app = new Vue({
    el: '#app',
    components: {
      iseemenu
    },
    data: {
      iseeData: {
        version: iseeAdmin.version,
        drawer: false,
        direction: 'rtl',
        showClose: false,
        status: false,
        show: true,
        asideShow: iseeAdmin.asideShow,
        asideShowIcon: iseeAdmin.asideShowIcon,
        fullscreen: false,
        fullscreenIcon: '&#xe610;',
        defaultActive: iseeAdmin.defaultActive,
        tagList: iseeAdmin.tagList,
        breadcrumb: iseeAdmin.breadcrumb,
        menu: iseeMenu,
        avatar: iseeAvatar
      },
      /*your data*/
      show1: true,
      options: [
        {
          label: 'Attention Seekers',
          options: [{
            value: 'bounce',
            label: 'bounce'
          }, {
            value: 'flash',
            label: 'flash'
          }, {
            value: 'pulse',
            label: 'pulse'
          }, {
            value: 'rubberBand',
            label: 'rubberBand'
          }, {
            value: 'shake',
            label: 'shake'
          }, {
            value: 'swing',
            label: 'swing'
          }, {
            value: 'tada',
            label: 'tada'
          }, {
            value: 'wobble',
            label: 'wobble'
          }, {
            value: 'jello',
            label: 'jello'
          }, {
            value: 'heartBeat',
            label: 'heartBeat'
          },
          ]
        },
        {
          label: 'Bouncing Entrances',
          options: [{
            value: 'bounceIn',
            label: 'bounceIn'
          }, {
            value: 'bounceInDown',
            label: 'bounceInDown'
          }, {
            value: 'bounceInLeft',
            label: 'bounceInLeft'
          }, {
            value: 'bounceInRight',
            label: 'bounceInRight'
          }, {
            value: 'bounceInUp',
            label: 'bounceInUp'
          },
          ]
        },
        {
          label: 'Bouncing Exits',
          options: [{
            value: 'bounceOut',
            label: 'bounceOut'
          }, {
            value: 'bounceOutDown',
            label: 'bounceOutDown'
          }, {
            value: 'bounceOutLeft',
            label: 'bounceOutLeft'
          }, {
            value: 'bounceOutRight',
            label: 'bounceOutRight'
          }, {
            value: 'bounceOutUp',
            label: 'bounceOutUp'
          },
          ]
        }, {
          label: 'Fading Entrances',
          options: [{
            value: 'fadeIn',
            label: 'fadeIn'
          }, {
            value: 'fadeInDown',
            label: 'fadeInDown'
          }, {
            value: 'fadeInDownBig',
            label: 'fadeInDownBig'
          }, {
            value: 'fadeInLeft',
            label: 'fadeInLeft'
          }, {
            value: 'fadeInLeftBig',
            label: 'fadeInLeftBig'
          }, {
            value: 'fadeInRight',
            label: 'fadeInRight'
          }, {
            value: 'fadeInRightBig',
            label: 'fadeInRightBig'
          }, {
            value: 'fadeInUp',
            label: 'fadeInUp'
          }, {
            value: 'fadeInUpBig',
            label: 'fadeInUpBig'
          },
          ]
        }, {
          label: 'Fading Exits',
          options: [{
            value: 'fadeOut',
            label: 'fadeOut'
          }, {
            value: 'fadeOutDown',
            label: 'fadeOutDown'
          }, {
            value: 'fadeOutDownBig',
            label: 'fadeOutDownBig'
          }, {
            value: 'fadeOutLeft',
            label: 'fadeOutLeft'
          }, {
            value: 'fadeOutLeftBig',
            label: 'fadeOutLeftBig'
          },{
            value: 'fadeOutRight',
            label: 'fadeOutRight'
          },{
            value: 'fadeOutRightBig',
            label: 'fadeOutRightBig'
          },{
            value: 'fadeOutUp',
            label: 'fadeOutUp'
          },{
            value: 'fadeOutUpBig',
            label: 'fadeOutUpBig'
          },
          ]
        },{
          label: 'Flippers',
          options: [{
            value: 'flip',
            label: 'flip'
          }, {
            value: 'flipInX',
            label: 'flipInX'
          }, {
            value: 'flipInY',
            label: 'flipInY'
          }, {
            value: 'flipOutX',
            label: 'flipOutX'
          }, {
            value: 'flipOutY',
            label: 'flipOutY'
          }
          ]
        },{
          label: 'Lightspeed',
          options: [{
            value: 'lightSpeedIn',
            label: 'lightSpeedIn'
          }, {
            value: 'lightSpeedOut',
            label: 'lightSpeedOut'
          },
          ]
        },{
          label: 'Rotating Entrances',
          options: [{
            value: 'rotateIn',
            label: 'rotateIn'
          }, {
            value: 'rotateInDownLeft',
            label: 'rotateInDownLeft'
          }, {
            value: 'rotateInDownRight',
            label: 'rotateInDownRight'
          }, {
            value: 'rotateInUpLeft',
            label: 'rotateInUpLeft'
          }, {
            value: 'rotateInUpRight',
            label: 'rotateInUpRight'
          }
          ]
        },{
          label: 'Rotating Exits',
          options: [{
            value: 'rotateOut',
            label: 'rotateOut'
          }, {
            value: 'rotateOutDownLeft',
            label: 'rotateOutDownLeft'
          }, {
            value: 'rotateOutDownRight',
            label: 'rotateOutDownRight'
          }, {
            value: 'rotateOutUpLeft',
            label: 'rotateOutUpLeft'
          }, {
            value: 'rotateOutUpRight',
            label: 'rotateOutUpRight'
          }
          ]
        },{
          label: 'Sliding Entrances',
          options: [{
            value: 'slideInUp',
            label: 'slideInUp'
          }, {
            value: 'slideInDown',
            label: 'slideInDown'
          }, {
            value: 'slideInLeft',
            label: 'slideInLeft'
          }, {
            value: 'slideInRight',
            label: 'slideInRight'
          },
          ]
        },{
          label: 'Sliding Exits',
          options: [{
            value: 'slideOutUp',
            label: 'slideOutUp'
          }, {
            value: 'slideOutDown',
            label: 'slideOutDown'
          }, {
            value: 'slideOutLeft',
            label: 'slideOutLeft'
          }, {
            value: 'slideOutRight',
            label: 'slideOutRight'
          },
          ]
        },{
          label: 'Zoom Entrances',
          options: [{
            value: 'zoomIn',
            label: 'zoomIn'
          }, {
            value: 'zoomInDown',
            label: 'zoomInDown'
          }, {
            value: 'zoomInLeft',
            label: 'zoomInLeft'
          }, {
            value: 'zoomInRight',
            label: 'zoomInRight'
          }, {
            value: 'zoomInUp',
            label: 'zoomInUp'
          }
          ]
        },{
          label: 'Zoom Exits',
          options: [{
            value: 'zoomOut',
            label: 'zoomOut'
          }, {
            value: 'zoomOutDown',
            label: 'zoomOutDown'
          }, {
            value: 'zoomOutLeft',
            label: 'zoomOutLeft'
          }, {
            value: 'zoomOutRight',
            label: 'zoomOutRight'
          }, {
            value: 'zoomOutUp',
            label: 'zoomOutUp'
          }
          ]
        },{
          label: 'Specials',
          options: [{
            value: 'hinge',
            label: 'hinge'
          }, {
            value: 'jackInTheBox',
            label: 'jackInTheBox'
          }, {
            value: 'rollIn',
            label: 'rollIn'
          }, {
            value: 'rollOut',
            label: 'rollOut'
          },
          ]
        },

      ],
      value: '',
      value1: '',
      value2: '',


    },
    methods: {
      iseeTagSwitch(url, index, breadcrumb) {
        iseeAdmin.iseeTagSwitch(url, index, breadcrumb, this.iseeData)
      },

      iseeTagClose(url, index) {
        iseeAdmin.iseeTagClose(url, index, this.iseeData)
      },

      iseeTagCommandClose(command) {
        iseeAdmin.iseeTagCommandClose(command, this.iseeData)
      },

      iseeMenuOpen(key, keyPath) {
        iseeAdmin.iseeMenuOpen(key, keyPath, this.iseeData)
      },

      iseeFullScreen() {
        iseeAdmin.iseeFullScreen(this.iseeData)
      },

      iseeAsideShow() {
        iseeAdmin.iseeAsideShow(this.iseeData)
      },
      iseeOpenUrl(command) {
        iseeAdmin.iseeMenuOpen(this.iseeData.avatar.list[command].index, this.iseeData.avatar.list[command].indexPath, this.iseeData)
      },
      iseeTagDivMove(flag) {
        flag == 1 ? this.$refs.iseeTagDiv.scrollLeft += 80 : this.$refs.iseeTagDiv.scrollLeft -= 80
      },
      /*your methods*/
      tryEffect() {
        console.log('tryEffect')
        console.log(this.value1)
        this.value2 = this.value1
      }
    },
    beforeMount() {
      iseeAdmin.init(this.iseeData)
      /*your beforeMount*/
    },
    mounted() {

    }
  });
</script>
</body>

</html>

